#ifndef SCREEN_H
#define SCREEN_H

#include "pscreen.h"

typedef struct _CScreen
{
	_DEP_SCREEN
	point			cSize;
} CScreen;


// public COMMON interface
PLIBEXP void	deleteCScreen(pCScreen This);

PLIBEXP void	CScreenClear(pCScreen This);
PLIBEXP void	CScreenClearRect(pCScreen This, int32 Left, int32 Top, 
					int32 Right, int32 Bottom);
PLIBEXP void	CScreenBitmapBlt(pCScreen This, int32 DestX, int32 DestY,
					pCBitmap Src);
PLIBEXP void	CScreenTransparentBitmapBlt(pCScreen This,
					int32 DestX, int32 DestY, pCBitmap Src);
PLIBEXP void	CScreenBitmapBltSection(pCScreen This, int32 dx, int32 dy,
					int32 sx, int32 sy, int32 sw, int32 sh, pCBitmap Src);
PLIBEXP void	CScreenTransparentBitmapBltSection(pCScreen This,
					int32 dx, int32 dy,
					int32 sx, int32 sy, int32 sw, int32 sh, pCBitmap Src);
PLIBEXP void	CScreenFrameBlt(pCScreen This, int32 DestX, int32 DestY,
					pCFrame Src);
PLIBEXP void	CScreenFlipPages(pCScreen This);

#define CScreenWidth(This)		((This)->cSize.x)
#define CScreenHeight(This)		((This)->cSize.y)

// protected COMMON interface
void		CScreenDestruct(pCScreen This);

#endif
